// import { Base64 } from './base64c'
// import request from '@/common/request.js'
import router from '../router.js'
// function base64Mehtod (arr) { //使用base64 进行对商品数据的打包
//   let itemList = ''
//   if (arr.length <= 0) {
//     return itemList
//   }
//   const base64 = new Base64()
//   itemList = base64.encode(JSON.stringify(arr))
//   return itemList
// }
// function itemListToBase64 (itemList) {
//   let arr = []
//   for (let item of itemList) {
//     let t = {
//       itemId: item.itemId,
//       itemName: item.name,
//       unitPrice: item.price,
//       itemCount: item.itemCount,
//       itemValue: item.price * item.itemCount,
//       skuId: item.skuId,
//       spId: item.spId,
//       spm: item.spm
//     }
//     arr.push(t)
//   }
//   return base64Mehtod(arr)
// }



/**
 * @description 微信支付
 * */
function wxPayMethod (params,callBack) {
  console.log('微信支付参数%o', params)
	let newdata = "itemName="+encodeURIComponent(params.itemName)+"&tradeId="+params.tradeId+"&totalFee="+params.totalFee+"&openId="+params.openId+"&orderId="+params.orderId
	console.log(newdata)
    let appId='368561c1bc1e8f95275ae27e9219ac13' //appid要保持全局一致
    let header={'Content-Type': 'application/x-www-form-urlencoded' };  //请求头  需要添加 不然后台获取不到数据
	 uni.request({
		// url: "https://gw.sanjia-soft.com/hxpay/hxmp.php?appId="+appId,
		url:"https://gw.sanjia-soft.com/wxpay/miniapp.php?appId="+appId,
		data: newdata,
		header: header,
		method: "POST",     //请求类型
		success: (res) => {
			if(callBack){
				console.log("微信支付 param",res)
			   callBack(res,params);
			}else{
			   console.log("微信支付 param",params,"return",res);
			}
		}
	 }); 
}

/**
 * @description 微信支付准备
 * @data 微信支付请求成功之后返回的支付参数
 * @payParams {object} 微信支付需要的参数
 * */
function onBridgeReady (data, payParams) {
  // alert('onBridgeReady:==========')
  window.WeixinJSBridge.invoke(
    'getBrandWCPayRequest',
    {
      appId: data.appId, // 公众号名称，由商户传入
      timeStamp: data.timeStamp, // 时间戳，自1970年以来的秒数
      nonceStr: data.nonceStr, // 随机串
      package: data.package,
      signType: data.signType, // 微信签名方式：
      paySign: data.paySign // 微信签名
    },
    function (res) {
      console.log(res)

      // 使用以上方式判断前端返回,微信团队郑重提示：res.err_msg将在用户支付成功后返回    ok，但并不保证它绝对可靠。
      if (res.err_msg === 'get_brand_wcpay_request:ok') {
        // 支付成功页面
        if (payParams.type === 'SHYY') {
          toastMsg('correct', '支付成功')
          setTimeout(() => {
            router.push('/home')
          }, 500)
        } else {
          // console.log('-----测试----支付成功----')
          router.push({
            path: '/success',
            query: { orderId: payParams.orderId, totalFee: payParams.totalFee }
          })
        }
      } else if (res.err_msg === 'get_brand_wcpay_request:fail') {
        return alert(res.err_desc)
      } else {
        // 跳转订单详情
        toastMsg('warn', '支付取消')
      }
    }
  )
}

// function alipay (res) {
// 	console.log('调起支付alipay',res );
// 	uni.requestPayment({
// 		provider: 'alipay',
// 		orderInfo: {
// 			"dealId": res.dealId,
// 			"appKey": res.appKey,
// 			"totalAmount": res.totalAmount,
// 			"tpOrderId": res.tpOrderId,
// 			"dealTitle": res.dealTitle,
// 			"rsaSign": res.rsaSign,
// 			"bizInfo": res.bizInfo
// 		}, //订单数据
// 		success: function(res) {
// 			console.log('success:' + JSON.stringify(res));
// 		},
// 		fail: function(err) {
// 			console.log('fail:' + JSON.stringify(err));
// 		}
// 	});
// }
 
function wxpay(ret,orderid) {
	console.log('调起支付wxpay',ret );
	let res=ret
	let status = false
	wx.requestPayment({
		timeStamp:res.timeStamp,
		nonceStr: res.nonceStr,
		package: res.package,
		signType: res.signType,
		paySign: res.paySign,
		appId:res.appId,
		success: function(res) {
			console.log('success:' + JSON.stringify(res),res);
			uni.showToast({
				title:'支付成功!'
			})
			setTimeout(()=>{
				router.push({path:'/pagesA/pages/order/success',query:{
					orderid: orderid
				}})
			},1000)
		},
		fail: function(err) {
			console.log('fail:' + JSON.stringify(err));
		}
	});
}
	
	
function arrayUnique2(arr, name) {  //数组去重
	var hash = {};
	return arr.reduce(function (item, next) {
		hash[next[name]] ? '' : hash[next[name]] = true && item.push(next);
		return item;
	}, []);
}

export {
    // itemListToBase64,
	// wxPayMethod,
	wxpay
	// alipay,
	// arrayUnique2
}
